package com.landinfo.service.dto;


import com.vividsolutions.jts.geom.LineString;

import java.io.Serializable;
import java.util.List;
import java.util.Objects;

/**
 * A DTO for the SampleLineMonitor entity.
 */
public class SampleLineMonitorDTO implements Serializable {

    private Long id;

    private String name;

    private String startPlaceName;

    private String endPlaceName;

    private Integer distance;

    private String monitorPersons;

    private Boolean enable;

    private Integer sort;

    private List<Double[]> geometry;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getStartPlaceName() {
        return startPlaceName;
    }

    public void setStartPlaceName(String startPlaceName) {
        this.startPlaceName = startPlaceName;
    }

    public String getEndPlaceName() {
        return endPlaceName;
    }

    public void setEndPlaceName(String endPlaceName) {
        this.endPlaceName = endPlaceName;
    }

    public String getMonitorPersons() {
        return monitorPersons;
    }

    public void setMonitorPersons(String monitorPersons) {
        this.monitorPersons = monitorPersons;
    }

    public Boolean isEnable() {
        return enable;
    }

    public void setEnable(Boolean enable) {
        this.enable = enable;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }

        SampleLineMonitorDTO sampleLineMonitorDTO = (SampleLineMonitorDTO) o;
        if(sampleLineMonitorDTO.getId() == null || getId() == null) {
            return false;
        }
        return Objects.equals(getId(), sampleLineMonitorDTO.getId());
    }

    @Override
    public int hashCode() {
        return Objects.hashCode(getId());
    }

    @Override
    public String toString() {
        return "SampleLineMonitorDTO{" +
            "id=" + getId() +
            ", name='" + getName() + "'" +
            ", startPlaceName='" + getStartPlaceName() + "'" +
            ", endPlaceName='" + getEndPlaceName() + "'" +
            ", monitorPersons='" + getMonitorPersons() + "'" +
            ", enable='" + isEnable() + "'" +
            "}";
    }

    public List<Double[]> getGeometry() {
        return geometry;
    }

    public void setGeometry(List<Double[]> geometry) {
        this.geometry = geometry;
    }

    public Integer getDistance() {
        return distance;
    }

    public void setDistance(Integer distance) {
        this.distance = distance;
    }
    
    public Integer getSort() {
        return sort;
    }

    public void setSort(Integer sort) {
        this.sort = sort;
    }
}
